Ford F-150 PowerBoost in silver, with a bed topper, hitched to a silver LightShip AE.1 travel trailer on a paved pullout under a clear sky, high-desert scrub and distant mesas behind
The rig under test: Ford F-150 PowerBoost (3.5 L EcoBoost + MGU, ProPower Onboard) towing the LightShip AE.1 — 15,320 lb / 6,949 kg combined, CAT-scale basis. NACS umbilical runs from the truck bed to the AeroHub receptacle on the trailer nose.
Testing Campaign 1 · Comprehensive Trip Report · Rev 1

Prescott → Oshkosh → Prescott

3,719 instrumented miles behind a Ford F-150 PowerBoost towing a LightShip AE.1 at 15,320 lb, July 11–24, 2026 — what the truck actually did, what the data actually showed, and what we got wrong along the way.
Campaign status: closed 2026-07-24 · fully reduced 2026-07-27 · corrections through rev 4 (2026-07-29)
Measured — came off an instrument Modeled — calculated from assumptions Observed & attributed — seen, but cause is judgment Flag — unresolved or withdrawn
01

The trip, in plain terms

Plain language We drove a hybrid pickup truck from Arizona to Wisconsin and back, pulling a battery-powered travel trailer, with a data logger recording forty-two channels off the truck's computer every two seconds for the entire two weeks. The point was to find out three things: whether the truck can meaningfully charge the trailer while driving, whether the trailer's own drive motor can push hard enough to save the truck fuel, and how hot the truck gets doing either one. We got a clear answer on the first, a disappointing but honest answer on the second, and a surprising answer on the third.

The route ran Prescott AZ → Salida CO → Broomfield CO (the LightShip Energy pitch, plus two back-to-back calibration loops) → North Platte NE → Aurora NE → Adel IA → Oshkosh WI for EAA AirVenture → Grand Island NE → western Colorado → Moab UT → Prescott AZ. The planned Fayetteville AR waypoint was dropped in-trip. Planned distance was roughly 3,000 miles; actual was 3,719.0.

110°W 105°W 100°W 95°W 90°W 35°N 40°N ARIZONA NEW MEXICO UTAH COLORADO WYOMING SOUTH DAKOTA NEBRASKA KANSAS IOWA MISSOURI ILLINOIS WISCONSIN Prescott AZ Flagstaff Cortez Durango Salida CO Broomfield CO North Platte Grand Island Omaha Adel IA Des Moines Madison WI Oshkosh WI Glenwood Spgs Grand Junction Moab UT Kayenta peak ECT 241.2°F · 7,538 ft 200 mi measured 1 Hz track ProPower bulk charging no GPS Albers equal-area conic · 21,539 GPS-bearing 10 s frames
Measured GPS track — 21,539 TrackLogger fixes at 10 s binning, Albers equal-area conic projection (standard parallels 29.5°N / 45.5°N). Heavy green underlay marks the 12.7 hours in which ProPower was delivering bulk charge (≥2.0 kW) to the trailer. Dotted rust marks the four stretches with no position data, drawn straight because nothing was recorded — they are not interpolated routes: the Prescott departure and arrival stubs, the 445 mi between eastern Iowa and Grand Island where TrackLogger died silently on Day 6, and Day 8 Segment 1 from Rifle to Moab, which had no GPS partner at all. Position covers roughly 3,057 of 3,719 mi (82%). State names are positional hints only; no boundary data was available offline.
Measured

Campaign totals. 3,719.0 mi · 258.59 gal · 14.38 mpg overall · 71.8 hr total, 65.5 hr moving · 129,229 logged frames across 15 OBD files and 12 TrackLogger files.

Fuel reconciliation against the truck's own Trip Fuel PID: mean absolute error 0.21%, worst leg 0.87%. The fuel accounting in this report is trustworthy to well under one percent.

02

What we set out to test, and what we actually got

Plain language Six things were on the test card. Four came back with real answers. One came back with an answer nobody wanted. One came back empty — and the reason it came back empty is itself the single most useful methodology lesson of the trip.
Protocol scorecard — Campaign 1
ObjectiveResultStatus
V2V charge rate & fuel cost at highway speed5.69–6.06 kW delivered across seven independent legs; 7.70 kWh AC per gallonMeasured — strong
Pure-tow fuel baseline15.43 / 15.27 mpg over 1,080 mi across a 15°F ambient spreadMeasured — strongest number in the campaign
TrekDrive fuel saving27.8% mechanical, not the 47% the raw comparison suggested; net negative on every battery-cost basisMeasured — unwelcome
Heat-enrichment penaltyOne clean sustained episode: 1.1 min, λ 0.824, 21.4% enrichmentMeasured — small but real
Aerodynamic drag (Cd·A)Nothing. R² = 0.000. Not recoverable from this dataset by any reanalysis.Failed — cause understood
Wind correction (HRRR round-trip)Pipeline never worked in the field; no usable wind data collectedRetired
03

V2V in-motion charging — the result that holds up

Plain language The truck charges the trailer while driving, at about 5.8 kilowatts, and it does so without complaint. Across every leg, every ambient temperature, and every elevation we encountered, when the system ran, it ran at full rate. It never quietly throttled itself back. That consistency is the finding — a system that degrades gracefully under heat is a much harder product to sell than one that either runs at rate or doesn't run.
Measured

74.74 kWh AC delivered to the trailer on the bulk-charge basis (≥2.0 kW), costing 9.71 gal at the measured 7.70 kWh AC/gal chain — 3.8% of campaign fuel.

Delivery rate when bulk charging: 5.69–6.06 kW, across seven independent legs spanning 80–104°F ambient and sea-level-equivalent to 8,000+ ft. No output-rate derate was observed anywhere in the campaign.

The rate consistency deserves emphasis because it survived the campaign's hottest conditions. On Day 4, the three consecutive segments ran at 5.83 → 5.82 → 6.06 kW while OAT max climbed 89.6 → 93.2 → 96.8°F. Duty cycle fell hard across those same segments — but the rate did not move. Duty is governed by the trailer's battery-management setpoints and by driver command. The rate is not modulated by heat.

The three converter states

Plain language The charging hardware isn't a simple on/off device. It has three distinct behaviors, and we spent two revisions of the knowledge base getting the middle one wrong. When the umbilical is plugged in but the trailer battery isn't taking a bulk charge, the system still pushes about a kilowatt down the cable. We first called that "standing overhead" and recommended switching it off. That was backwards — that kilowatt is roughly the trailer's house load, and it's covering the fridge, the 12-volt system, and the controls instead of the trailer's own battery covering them.
DCACA operating states — measured across independent legs
StateDrawWhere observed
Disabled / umbilical unplugged0.000 kWDays 5, 6, 7, 8 Seg 1–2 (Phase A legs)
Connected, load-support0.938–0.951 kWDays 1, 2, 4 S1–S3 — six independent legs
Delivering, bulk charge5.69–6.06 kWDays 1, 2, 3 R1, 4 S1–S3, 8 S3 — seven legs
Observed & attributed

The three magnitudes are measured and firm. The attribution of the middle state to trailer house-load support is operator judgment, not instrumentation — the OBD stream carries what the truck sent, but carries nothing at all about what the trailer did with it. Campaign 1 has no LightShip-side load or SOC channel.

Campaign-wide, the middle state accounted for roughly 16.6 kWh of the 91.3 kWh gross delivered — energy that reached the trailer and did work, but that is deliberately kept off the bulk-charge line because it is a different service.

Why the threshold matters: setting the "active" cutoff at 0.5 kW instead of 2.0 kW merges the two services and overstates bulk charge by up to 50% on a low-duty leg. Day 1 reads 27.68 kWh combined against 18.48 kWh of genuine bulk charge. The 2.0 kW threshold is now a locked convention.

04

TrekDrive — the number that got smaller, honestly

Plain language On July 14 we ran the same 35-mile loop twice — once with the trailer's drive motor helping, once without — and the fuel rate dropped 47%. That looked spectacular. It was misleading. Turning TrekDrive on also forcibly turns ProPower off, because the two are interlocked. So half of that 47% was simply the truck no longer generating 5.8 kW of electricity, not the trailer pushing. Once you subtract that out, the genuine mechanical benefit is 27.8%. And once you charge the trailer for the battery it drained doing the pushing, the whole exercise loses energy.
July 14 calibration pair — 100% of Run 2's track within 150 m of Run 1's; net altitude change −19 vs −17 ft
QuantityRawDecomposed
Fuel-rate reduction47.1%
Attributable to ProPower switching off0.612 gal (47% of the gap)
Attributable to TrekDrive mechanical load transfer0.703 gal
Distance-normalised, propulsion only27.8%
Flag — headline correction required

Never report 47%. Any State A vs State B fuel comparison must first subtract the ProPower contribution at the measured 7.70 kWh AC/gal basis. The mechanical figure is 27.8%.

The pre-trip model's 4.28 → 1.73 gal/hr (~60% reduction) is not reproduced by measurement. Measured Run 1 was 3.67 gal/hr.

Net energy balance — gross saving 0.568 gal, against modeled battery cost
Battery-cost basiskWhFuel-equivalentNet
250 Wh/mi × 34.4 mi8.611.118 gal−0.550 gal
15.0 kW × 0.76 hr11.401.481 gal−0.913 gal
17.2 kW × 0.76 hr13.071.698 gal−1.130 gal

The sign is stable across the entire plausible range. But the sign depends on one assumption that is worth stating out loud every single time: valuing trailer kWh at the ProPower recharge chain (7.70 kWh AC/gal) is only correct when the truck is the sole charging source. With destination charging, that energy costs grid rates and the net flips positive. This is the Case 1 / Case 2 split that was already in the energy-balance model — the calibration pair is the first measured evidence for it.

Pitch consequence

The pitch should lead with battery-neutral operation — the system's ability to hold its own state of charge over a long tow — not with raw fuel saving. Fuel saving is basis-dependent and, on the truck-only basis, negative. Battery neutrality is the property that is actually robust and actually differentiating.

05

Heat — and the assumption it demolished

Plain language We expected the truck's worst heat problem to show up on the 104°F plains. It didn't. The worst thermal event of the entire trip happened at 79°F outside air — on a long mountain climb above 7,500 feet. Thin air takes away cooling capacity and intercooler effectiveness at the same moment the engine is working hardest. This is not a footnote. It invalidates the trigger logic we had designed for the automated assist system.
Campaign thermal peaks against factory-documented anchors
MetricCampaign peakFactory anchor
Engine coolant temp (ECT)241.2°F (Day 7)217.4°F fully-open thermostat
Charge-air temp (IAT2)197.6°F (Day 7)140°F Tier-3 throttle-closure
Measured

11 of 13 segments spent time above the fully-open-thermostat spec — roughly 522 minutes campaign-wide.

Dwell structure matters more than the peak. Day 7 spent 103.7 min above 217.4°F, but only 2.8 min above 230°F and 0.1 min above 240°F. A peak alone overstates the problem; a mean alone hides it. Report both.

Conditions at the worst event: 78.8°F ambient, 7,516–8,215 ft, 85.9% load, 3,574 RPM, 57.8 mph.

Design finding — TurboAssist

The current TurboAssist trigger specification uses engine load with an OAT correction that arms above 86°F. The campaign's worst thermal event would not have tripped that correction at all. If load-triggered assist is meant to catch the real heat, the trigger needs an altitude or ECT term. Ambient alone is the wrong variable.

Enrichment — one clean episode

The campaign produced exactly one qualifying sustained rich-λ episode under the filter (λ < 0.95, load > 60%, IAT2 > 140°F, single-sample DFSO transients excluded): 33 rows / 1.1 minutes, mean λ 0.824, enrichment fraction 21.4%, peak IAT2 197.6°F at 7,362 ft, Day 7. Small in absolute fuel terms, but it demonstrates the mechanism is real and measurable on this platform — and, again, it landed on a mountain grade rather than the hot plains the protocol was aimed at.

06

The one thing that actually broke

Plain language Over 3,719 miles, the charging system stopped once. On the Cortez-to-Durango leg the connector on the trailer nose got hot enough to drop the charge session, and it came back on its own as the climb cooled things off — but only after thirty to forty-five minutes, long after ambient had fallen well below anything that should have kept it locked out. We can say with confidence the delay wasn't the truck's fault. We cannot say what the real limit is, because it happened exactly once.
n = 1 — do not generalise

What is solid: the factory manual puts the truck-side DCACA thermal cutoff at 199.3°F / 93°C — roughly 95–100°F of margin above where the dropout occurred — and documents auto-recovery with no fixed lockout timer. The behaviour is therefore not DCACA-side. LightShip-side EVSE/OBC/BMS logic is the strong remaining candidate. This reasoning can be stated with confidence in the LightShip conversation.

What is not: the ~30–45 minute lockout duration cannot be generalised from a single observation. Neither can any receptacle temperature ceiling. The pre-trip "102–105°F, 3–5°F above OAT" figure remains an unverified estimate and should stop being quoted as though it were characterised.

Everything else held. No frame drops, no PID dropouts, no logger crashes on the OBD side, no charge faults elsewhere, no thermal derate.

07

The most valuable failure: Cd·A

Plain language We wanted to measure how much of the fuel goes into pushing air out of the way versus rolling the tires. Seven hours of qualifying highway data produced literally zero information about it. The reason is almost funny: cruise control worked too well. To separate air drag from rolling drag you need the vehicle to travel at genuinely different speeds, because air drag grows with the square of speed and rolling drag doesn't. Cruise control held us in a two-tenths-of-a-mile-per-hour band for the entire trip. There was nothing to compare against.
Failed — collinearity, not noise

Pooled across all 13 reduced segments, using ≥60 s windows at speed std < 0.5 mph and |grade| < 0.5% — 504 minutes of qualifying flat steady-state data:

Cd·A = −0.136 ± 0.303 m² · 95% CI [−0.730, 0.458] · R² = 0.000 · condition number 13,392

Expected magnitude for this rig is ~3.9 m². The confidence interval contains zero and negative values. Speed IQR across every qualifying window was 62.3–62.5 mph; 92% of the time sat in a single 62–64 mph bin.

The diagnostic that proves it is collinearity rather than sample size: adding the widest-spread leg (Day 5) tightened the standard error without improving leverage. More data of the same kind cannot fix this.

One thing did survive. The regression intercept gives Crr = 0.0197 ± 0.0028 — physically plausible for a heavy trailer at highway speed. Rolling resistance was never the blocked term; only the aero split was.

The consequence propagates: the trailer road-load figure (~14.8 kW at 62 mph) stays modeled everywhere it appears, including inside the TurboAssist energy balance. Campaign 2's Method-2 speed-hold protocol — 50/55/60/65/70 mph, ≥90 s each, first 15 s trimmed — is the only path. One deliberate 30-minute session beats seven hours of incidental cruising. Campaign 1 deferred it to a convenient leg and got nothing.

A corrected-coastdown alternative was considered and rejected on the arithmetic: MGU regen force (−10 to −14 kW routinely, up to −38 kW) is the same magnitude as or larger than the trailer road load being sought, so the method subtracts one large noisy number from another to recover a small difference. Error amplification, not sample size, is the killer.

08

Instrumentation report — what the data itself taught us

Plain language Half of what we learned on this trip wasn't about trucks at all — it was about how field data goes wrong. Clocks lie. Temperature sensors pin at impossible values. GPS loggers die silently and keep looking healthy. None of these were catastrophic, but every one of them would have quietly corrupted a conclusion if it hadn't been caught.

Clocks — the most common defect in the campaign

Four of the ten legs with a GPS partner file carried a one-hour clock error, in both directions. The pre-trip rule — infer the timezone from the first GPS fix and convert the filename stamp — fails whenever a device carries a stale zone across a state line. On Day 4 the OBD logger held MDT all day while physically in CDT Nebraska from Segment 2 onward; the old rule would have produced a one-hour error in the opposite direction from the real one.

Detected clock offsets — empirical GPS cross-match, moving rows only
OffsetLegsWhich
0 s5Day 2, Day 3 R1/R2, Day 5, Day 6
+3600 s4Day 1, Day 4 S1–S3
−3600 s3Day 7, Day 8 S2–S3
Method now locked

Take ~21 checkpoints across the GPS file, find the nearest OBD position for each, compute the implied offset, take the median. Restrict both sides to rows above 30 mph — at standstill, nearest-position matching is ambiguous and scatters badly. Day 6 unrestricted returned checkpoints spanning −266 to +91 s around a true offset of zero; restricted to moving rows, the same leg gives median −0.2 s, std 0.5 s.

Also check for a mid-leg step, not just a central value — a device auto-correcting at a state line produces one, and a median would mask it. Campaign 1 showed no mid-leg steps, but the check is what establishes that.

Other data defects found and handled

The wind pipeline, retired

The Open-Meteo HRRR anchor-link round-trip — generate URLs, download in browser, upload back for merge — was specified pre-trip and failed in practice on most legs. No usable wind data was collected. This is a methodology finding, not housekeeping: a per-leg manual download round-trip is not a viable field workflow. If wind is reinstated, it must be either an onboard measurement or a bulk post-hoc archive pull. The Section 03 wind cross-check is removed from the report template, and wind_residual_pct stays blank — not zero — on every Campaign 1 ledger row.

09

What we changed our minds about

Plain language Four conclusions we published during the trip turned out to be wrong, and we withdrew them. This section exists because a project that never retracts anything isn't being careful — it's just not checking. The reasoning is preserved rather than deleted, so the error is auditable.
Withdrawn — converter middle state as overhead

Rev 2 called the ~0.95 kW connected-not-charging state "armed-idle overhead" and recommended switching the converter off between charging windows on hot legs. Retracted at rev 3. That advice was built on the belief that the middle state delivered nothing; in fact it would simply move the same load onto the trailer pack. Do not reinstate without evidence.

Withdrawn — hot-afternoon duty collapse as equipment behaviour

Rev 2 claimed the Day 4 duty sequence (66.0% → 43.1% → 9.9% as OAT max rose 89.6 → 93.2 → 96.8°F) "quantitatively corroborated" an EVSE thermal ceiling, and concluded "on a 97°F afternoon it runs about a tenth of the time." Retracted at rev 3. The correlation is real; the causation was wrong. The operator commanded ProPower down as ambient entered the 90s, to limit engine thermal load. That is an operating practice, not an equipment limit.

This is the single most instructive error of the campaign. Operator-commanded reduction, BMS setpoint cycling, deliberate test segments, and genuine equipment dropout produce identical-looking duty patterns in the OBD stream and cannot be separated after the fact. A five-word driver note at the time would have prevented a misattribution that survived two knowledge-base revisions.

Retired — LTFT bank-asymmetry watch item

The pre-trip flag ("B2 runs persistently richer than B1 with a slowly widening gap") did not survive. Across 13 segments the gap scatters 0.19–2.12 with no trend, mean ≈ 1.14. The 1.20% → 1.66% reading that prompted it was a within-leg slice of a quantity that swings by more than that between legs. An apparent common-mode downward drift also failed — B1 went +2.29 → −2.12 by Day 5, then recovered to −0.17 by Day 7.

Replacement wording: LTFT leg-means vary with operating point; no bank asymmetry trend and no common-mode drift established. Any future drift claim must condition on a consistent RPM/load band before it is reported.

Corrected — campaign thermal high

The recorded "trip high" of 227.7°F (July 16 Seg 1) was an artifact of Days 1–2 and 7 not yet having been processed. Day 1 (232.1°F) and Day 2 (232.7°F) both predate and exceed it; Day 7's 241.2°F is the real peak.

10

Post-campaign addendum — a years-old question, settled in a parking lot

Plain language Five days after the trip ended, an eight-minute test in a parked truck resolved a question that had been open for years and was quietly holding up the entire aerodynamics program. The answer went against a long-standing field intuition — which is the best kind of answer.

The open question: does the truck's "Hybrid/EV Battery Power" channel measure total high-voltage bus draw, or only the traction motor? If traction-only, the traction-load residual formula would double-subtract the accessory branches and be invalid — and the wheel-power term that Cd·A depends on would be untrustworthy.

The field intuition, built over years of driving, said traction-only: the meter swings wildly with acceleration and braking and appears never to flinch when a several-kilowatt ProPower load lands on the bus. That observation was real but non-discriminating — traction swings ±20–35 kW routinely, so a few-kW accessory step is simply lost in the visual noise.

Measured — 2026-07-29 parked bench test

In the engine-off window with ProPower delivering ~1.35 kW and the A/C compressor off, HV Battery Power read +2.09 kW against a quiet engine-off baseline of +0.80 kW — a +1.29 kW delta matching the delivered load within converter losses. SOC fell 52.9% → 50.2% across the same window as the independent witness that the pack really was discharging. Adding the compressor (~5.7 A) on the same ProPower load pushed it to +3.17 kW.

It is a total-bus-terminal measurement. Sign convention confirmed: positive = discharge, negative = charge.

Consequences: the traction-load residual formula stands, validated. The latent double-subtraction flag is logged as raised and resolved. The power-balance wheel-power term is sound — which clears the exact prerequisite that Cd·A's second run was deliberately waiting on. The method generalises, and is now written up as a reusable protocol: one continuous engine-in-the-loop file, pre-charge the pack high, apply a known load in the engine-off window, difference against the measured quiet baseline rather than against zero.

Two smaller corrections came out of the same file: the A/C compressor is a high-voltage device on the bus, not a 12V load off the DC/DC converter (the converter acts as a pass-through junction, which is what caused the earlier misstatement), and the 44-PID configuration passed its static frame-rate verification — median Δt 2.000 s, std 0.0031 s, 100% in band. That verification still has to be repeated under towing load before a full Campaign 2 leg is trusted.

The bus, drawn

Confirming that the meter reads the whole bus only matters if you know what is hanging on the bus. The topology below is factory-documented (414-03A / 414-05 / 303-01G), with the rev-4 compressor correction applied. Everything on it is ultimately crankshaft work: the pack is a buffer, not a source, so on a tow leg every kilowatt-hour that leaves the bus is a kilowatt-hour the engine put there.

HYBRID DRIVE UNIT MGU / motor / generator 3.5 L ECOBOOST internal combustion crankshaft SOBDMC / ISC traction inverter / 150 A 3-phase AC HV BATTERY ~300 V nominal SOC + pack power HV JUNCTION BECM contactors HIGH-VOLTAGE BUS / total draw = the confirmed measurement DC/DC CONVERTER HV to 12 V / 50 A DCACA ProPower inverter 12 V SYSTEM all LV loads, blower ACCM A/C compressor / HV HV pass-through 120 / 240 V AC NACS to LightShip directly metered, Campaign 1 metered from Campaign 2 (new PIDs) metering path unresolved
PowerBoost HV bus topology. Factory-documented (414-03A, 414-05, 303-01G) with the rev-4 compressor correction: the ACCM is an HV device that the DC/DC converter passes high voltage through to, not a 12V load hanging off its output. Fusing is asymmetric by design — 150 A on the traction side, a shared 50 A on the DCDC + DCACA side — so a ProPower fault cannot propagate into traction.

What actually pulls on the bus

Five branches, and Campaign 1 could resolve exactly one of them. Magnitudes below come from the reduced campaign frames except where noted as bench observations, which are single parked measurements and carry no leg-scale weight.

Major HV bus draws — magnitude and instrumentation status
BranchTypical magnitudeSignCampaign 1Campaign 2
MGU motoring (traction assist)20–35 kW routine, to 38 kWdischargeinside HV Battery Power onlysame + cleaner residual
MGU generating (regen)−10 to −14 kW routine, to −38 kWchargeinside HV Battery Power onlysame
MGU generating (engine-driven charge)−31 to −35 kWchargeinside HV Battery Power onlysame
DCACA / ProPower0 / 0.938–0.951 / 5.69–6.06 kWdischargeoutput kW — metered+ HV-side amps
DCDC — entire 12V system≈0.6 kW parked bench (~2 A at ~300 V)dischargenot instrumentedHV current — new PID
ACCM — A/C compressor+1.08 kW, single bench observationdischargecompressor amps onlymetering path unresolved
Traction residual = bus total − (DCDC + DCACA)by subtractionnot computablecomputable, formula validated

The asymmetry is the point. ProPower is the one branch Campaign 1 metered directly, and it is also the one branch that is not a truck-side inefficiency — it is deliverable product. The two branches that consume fuel purely to run the truck, DCDC and ACCM, were invisible for all 3,719 miles. That is why the campaign can state ProPower's cost to four significant figures and cannot state the accessory cost at all.

Why this is the hot-weather mileage question

Plain language When it gets hot, mileage drops. The usual explanation is that the engine works harder. The more interesting explanation is that a chunk of the loss never touches the driveline at all — it goes out through the air-conditioning compressor, which on this truck is an electrical load on the same bus ProPower uses, fed by the same engine. Campaign 1 had no way to see it. Campaign 2 does.

The cooling burden loads the bus twice, and the second one is not optional. The compressor serves cabin cooling and, via a BECM-controlled coolant diverter valve, the battery chiller — the factory description has the valve routing coolant through the chiller when extra cooling is needed under high ambient temperature and/or high current demand. So the compressor cannot be switched off the way a cabin load can: turning cabin cooling down still leaves it cycling for the pack, and the battery circuit's documented upper limit is 131°F.

That "and/or high current demand" clause carries a consequence for the pitch that Campaign 1 could not test. Bulk-charging the trailer at 5.8 kW pushes sustained current through the pack; sustained pack current is one of the two conditions that calls for chiller duty; chiller duty is compressor draw; compressor draw is more bus load and more engine work. If that loop is real, V2V charging carries a second-order cooling cost in hot weather on top of its measured 7.70 kWh AC/gal, and the measured figure is a floor rather than a full cost. This is a hypothesis with a documented mechanism behind it, not a finding — it should be stated that way until 44-PID data exists.

What Campaign 1 can and cannot say about it

It cannot say much, and the reason is worth stating plainly rather than glossing, because the obvious analysis gives the wrong answer with the wrong sign.

The confound — do not regress mpg against ambient on Campaign 1 legs

Day 4 appears to show mileage improving as it got hotter: Seg 1 13.90 mpg at 89.6°F max, Seg 2 15.73 at 93.2°F, Seg 3 15.63 at 96.8°F. That is not a thermal result. ProPower was commanded down across the same three segments — 17.46, then 6.26, then 2.58 kWh — and the ProPower reduction is worth far more mpg than the heat costs. Any naive hot-versus-cool comparison across Campaign 1 legs picks up the operator's thermal practice, inverted.

The ProPower-off legs remove that confound but leave terrain in its place. Across the four usable Phase A highway legs, mpg spans 14.03 to 16.53 with no ordering by ambient at all — the lowest is Day 7 at 89.6°F, which is the high-altitude mountain leg, and the highest is Day 8 Seg 1 at 84.2°F on flat ground. The Day 5 / Day 6 pair (15.43 mpg at 95.0°F, 15.27 at 80.6°F) is the cleanest comparison in the campaign and agrees within 1% across a 15°F spread.

Read honestly, that says: whatever the hot-weather accessory penalty is, on flat plains legs it is smaller than the leg-to-leg terrain spread, and Campaign 1 cannot separate it from that spread. It does not refute the mechanism. It does bound the size of what we are hunting, and it means the number cannot be recovered by any reanalysis of this dataset — the same conclusion Cd·A reached, for the same structural reason.

Modeled — expected magnitude, to size the Campaign 2 measurement

Backing ProPower's measured 7.70 kWh AC/gal through inverter losses puts roughly 8 kWh of bus energy per gallon. A compressor running a sustained 1.5 kW on a hot leg then costs about 0.19 gal/hr. Against a tow-leg baseline near 4.1 gal/hr at 62 mph and 15 mpg, that is on the order of 4–5%, or roughly 0.6–0.7 mpg.

Both steps are modeled — the inverter-loss backout and the assumed compressor duty. The point is not the number; it is that the expected effect sits inside the terrain spread Campaign 1 could not see past, which is what tells you the measurement has to isolate the branch rather than infer it from mpg.

What the new PIDs settle, and what still blocks them

Campaign 2's two added channels — DCDC HV-side current and DCACA HV-side current — convert this from an argument into an accounting. The DCDC channel is documented as covering the entire downstream 12V draw as seen from the bus, so it captures the low-voltage half of the cooling burden (blower, controls) without further inference. With both channels populated, every branch except traction is directly metered, traction falls out as the validated residual, and the six-term nightly regression can carry e (DCDC) and f (HVAC) as real coefficients instead of omitted terms.

Two things still gate it, and neither is fixed by driving more.

Blocker 1 — ACCM metering path, unresolved and bidirectional

Whether the compressor's HV draw appears inside the DCDC HV-current channel, on its own channel, or in neither is not known. The risk runs both ways, and both ways corrupt the hot-weather answer specifically. If the compressor sits outside the DCDC channel and is not subtracted, the traction residual silently absorbs it — and since compressor draw is the term that grows with ambient, hot-leg "propulsion" would come out inflated by exactly the quantity being measured. If it sits inside DCDC and a separate compressor channel is also subtracted, it double-counts and propulsion comes out low.

Resolvable in one parked session with the bench protocol: toggle the ACCM, watch the DCDC HV current. Until it is run, the cooling row and the propulsion row of the bus-energy budget are coupled and neither is reportable.

Blocker 2 — the compressor-current channel does not convert cleanly to bus kW

New, from re-reading the 2026-07-29 bench file against the factory 300 V figure. The compressor drew ~5.7 A on its own current channel, which at any plausible bus voltage of 300–330 V implies 1.7–1.9 kW. The observed step in HV Battery Power was 1.08 kW — a gap of roughly 40%, well outside converter losses.

The likely reading is that the channel reports motor-phase current rather than bus-side current, in which case it cannot be scaled to bus power by multiplying by pack voltage. This matters directly: it is the channel the f coefficient would otherwise lean on. Flagged, not resolved — it is a two-number inference from a single bench window and needs a deliberate multi-point check across compressor states before anything is built on it.

Both blockers land in the same parked session, and that session is free — no fuel, no route, no weather window. It should run before Campaign 2 departs, not during it. The lesson Campaign 1 taught about deliberate experiments is that they do not happen opportunistically.

11

Per-leg ledger

Campaign 1 — 13 reduced segments · ProPower kWh on the bulk-charge basis (≥2.0 kW)
DateLegmigalmpgkWhOAT maxECT max
07-11Prescott AZ → Salida CO (Day 1)605.7946.5713.0118.48100.4232.1
07-12Salida → Broomfield (Day 2)156.9812.8112.2618.47104.0232.7
07-14Broomfield loop Run 1 — State B36.722.7913.154.71102.2219.7
07-14Broomfield loop Run 2 — State A34.441.4823.320.00102.2207.7
07-16Broomfield → North Platte (D4 S1)252.9118.1913.9017.4689.6227.7
07-16North Platte → Aurora NE (D4 S2)152.309.6915.736.2693.2212.4
07-16Aurora NE → Adel IA (D4 S3)236.6815.1515.632.5896.8221.7
07-17Adel IA → Oshkosh WI (D5, Phase A)419.9927.2115.430.0095.0222.9
07-22Oshkosh WI → return (Day 6)660.0843.2315.270.0080.6225.8
07-23Grand Island NE → westbound (Day 7)590.8442.1314.030.0089.6241.2
07-24Day 8 Seg 1 (no GPS partner)157.319.5216.530.0084.2226.8
07-24Day 8 Seg 214.011.578.940.0082.4227.9
07-24Day 8 Seg 3 (final)400.9928.2714.186.7898.6231.5

The Phase A baseline is the most robust number in the campaign. Day 5 (15.43 mpg) and Day 6 (15.27 mpg) cover 1,080 miles across a 15°F ambient spread and agree to within 1%. Everything else in the fuel accounting is measured against that.

Day 8 Seg 2 (8.94 mpg over 14 miles) is a 17-minute repositioning segment, not a representative leg — short, low-speed, and dominated by a cold-ish start. Included for completeness; excluded from any economy comparison.

12

Open flags and unresolved items

Resolved 2026-07-31 — Day 1 load-support figures

Adjudicated value: 9.20 kWh over 9.73 non-bulk-charging hours — 1.19 gal equivalent at the 7.70 kWh AC/gal basis, 2.6% of that leg's 46.574 gal. Operator's call, taken on the campaign1_features_ALL.csv figure as the closest source to the raw stream.

The choice is independently self-consistent, which the other two were not. Non-bulk duration derives from the feature table without touching the energy figure at all — 12.98 hr total × 25.0% bulk-charge duty = 3.25 hr charging, leaving 9.735 hr. Dividing the adjudicated energy by that duration gives 0.945 kW mean delivery, which sits inside the measured connected-load-support band of 0.938–0.951 kW and within 0.006 kW of Day 1's own recorded baseline of 0.951 kW. Energy, duration, and rate now close on each other from three separate columns.

Superseded, reasoning preserved: KB rev 3/4 text (9.26 kWh / 9.73 hr) carried the correct duration and an energy figure high by 0.06 kWh. The Pass-2 synthesis table (9.26 hr / 9.13 kWh) is the transposition — 9.26 migrated from the energy column into the hours column, and 9.13 was then fitted around it. Neither figure is to be reinstated; both are retained here so the error path stays legible.

Resolved 2026-07-31 — trip ledger promoted

The stale Project-Knowledge trip_ledger.csv (single pre-reduction Day 1 row, 574.03 mi / 44.36 gal / 18.16 kWh, "segment 1 pending", no hv_accessory_kw_avg column) is superseded. The reduced 13-row draft has been promoted verbatim to trip_ledger.csv, column order unchanged from the rev-1 specification, no values edited.

Promoted file reconciles to the campaign totals exactly: 3,719.04 mi · 258.593 gal · 71.80 hr · 74.74 kWh AC · 14.38 mpg. Day 1 now reads 605.79 mi / 46.574 gal / 18.48 kWh with segment 1 recovered. Requires re-upload to Project Knowledge to take effect.

13

Campaign 2 — what this trip says to do next

Plain language The biggest lesson isn't any single number. It's that the measurements which required a deliberate thirty-minute experiment all failed, and the measurements that came free from just driving all succeeded. Campaign 2 needs to front-load the deliberate ones on day one instead of waiting for a convenient leg — because a convenient leg never arrives.
Campaign 2 priority list, in order
ItemCostWhat it unlocks
Method-2 speed holds — 50/55/60/65/70 mph, ≥90 s each, flat low-traffic segment~30 min, onceCd·A; the aero/rolling split; a real road-load figure inside the TurboAssist model
LightShip Atlas SOC logging on every calibration runSetup onlySection 04 measured net; ends the "truck can't see the trailer" blind spot
Connected-load-support isolation — matched connected vs. disconnected SOC-decline windows~1 hr of one legConverts the load-support claim from attributed to measured
HVAC-compressor metering path — parked toggle, watch the DC/DC HV current channel~10 min, parkedThe six-term regression's f term; removes a double-count risk from the bus energy budget
44-PID frame-rate verification under towOne leg's first hourTrust in every Campaign 2 leg; static verification already passed
EVSE thermal threshold — hold ProPower through rising ambient, abort criterion set in advanceOne controlled legWhether a receptacle ceiling exists at all. Only run if engine-thermal risk is judged acceptable.

Note that the first three pair naturally into a single session. The speed-hold protocol, the load-support SOC comparison, and a measured HVAC isolate can all run on the same flat, low-traffic stretch on the same afternoon — which is exactly the kind of consolidation that makes a deliberate experiment survive contact with a travel schedule.

Field-checklist additions earned by this campaign

14

The short version

Testing Campaign 1 — Comprehensive Trip Report, Rev 1. Generated 2026-07-31.
Sources: campaign1_features_ALL.csv (13 reduced segments), trip_ledger_campaign1_DRAFT.csv, PowerBoost–LightShip Instruction Set rev 4 (2026-07-29), Cd·A Method-2 protocol doc, V2V Measured Baseline, TrekDrive TurboAssist Energy Balance (corrected).
Mass basis 15,320 lb / 6,949 kg (CAT scale + independently verified payload). Instrumentation: OBDLink MX+, 42 PIDs, 2.0 s fixed cadence; TrackLogger Pro 1 Hz GPS.
Coding: measured = off an instrument · modeled = calculated from stated assumptions · observed & attributed = seen, cause is judgment · flag = unresolved, withdrawn, or awaiting adjudication. No figure in this report has been silently reconciled with a conflicting figure elsewhere.